import 'package:json_annotation/json_annotation.dart';

import 'kh_chat_room_ranking_model.dart';
import 'kh_popularity_model.dart';
import 'kh_richer_model.dart';
import 'kh_wish_product_info_model.dart';
part 'kh_chat_room_fanstuan_model.g.dart';

@JsonSerializable()
class KHChatRoomFanstuanModel {
//团长id
  int? groupUserId;
  String? fanUserId;
  String? imId;
//粉丝团名
  String? groupName;
  String? fanGroupName;
  String? groupUserName;
//粉丝团总成员数
  int? groupMemberCount;
//生效人数
  int? groupValidCount;
//粉丝团图标
  String? groupIcon;
  String? groupUserIcon;
  String? groupDesc;
//粉丝头像
  String? fanUserIcon;
//用户头像
  List? topUserList;
//动效图svga
  String? giftShowUrl;
  String? giftObjectUrl;
  String? giftName;
  int? hotValue;
  String? dynamicEffectExtInfo;
//动效图vap
  String? giftVapUrl;

//扩展字段
  String? roomExtInfo;
//第几个加入
  String? groupRank;
//团名
  String? fansClubName;
//背景图
  String? fansSimpleUrl;
//钻石图标
  String? fansDemiondUrl;
//粉丝团等级
  int? fansLevel;
//第几个加入粉丝团
  int? fansSorts;
//粉丝团id
  int? fanGroupId;
//粉丝团等级
  int? levelCode;
//房间信息
  String? roomNo;
//可能有多个房间
  String? roomNos;

//粉丝团座位框图标
  String? fanGroupMicIconUrl;
//粉丝团背景图标
  String? fanGroupBackgroundUrl;
//失效砖石图标
  String? greyFanGroupDiamondUrl;
//背景色
  String? fanGroupBackgroundColor;
//等级背景色
  String? fanGroupLevelColor;
//等级
  String? fansLevelCode;
//粉丝团宝石图标
  String? fanGroupDiamondUrl;
  String? fanGroupRoomEnterUrl;

//具体信息(内部包含以下字段)
  KHChatRoomFanstuanModel? fanGroupIconConfig;
  KHChatRoomFanstuanModel? fanUserInfo;
  KHChatRoomFanstuanModel? curUserRankInfo;
//用户id
  String? userId;
//昵称
  String? nickname;
//头像
  String? headPortraitsUrl;
//用户编号
  String? userCode;
//粉丝数
  int? fans;
// 性别（0：保密；1：男；2：女）
  int? gender;
//1.用户 2.陪玩师
  int? type;
//yahabibi贵族等级
  int? nobleRankCode;
//贵族名称
  String? nobleRankName;
//不带文字的徽章
  String? emblemSimpleUrl;
//yahabibi贵族徽章-带文字
  String? emblemUrl;
  KHPopularityModel? popularityInfo; //人气等级
  KHPopularityModel? wealthInfo; //财富等级
  KHRicherModel? richerInfo;

  ///超豪
//背景
  String? nobleBackgroundUrl;
//等级
  int? memberLevel;
//等级图标
  String? memberEmblem;
  int? memberExp;
//粉丝等级
  int? fanLevel;
//守护值
  String? totalFanExp;
//升级还差经验值
  String? upLevelDiffExp;
//距离上一名还差多少经验值
  String? diffValue;
//排名差距
  String? rankNum;
//粉丝是否有效
  bool? isFanValid;
//是否有效
  bool? isValid;
//是否隐身(true不隐身，false隐身)
  bool? isVisible;
//是否在线
  bool? isOnline;
//是否是恢复粉丝身份
  bool? fansStatusChange;
//是否第一名
  bool? isInTopRank;
//守护值
  int? rankValue;
//守护值展示
  String? rankValueStr;
//活跃时间
  String? activeTime;
  String? seatFrameUrl;
  String? appSeatFrameUrl;
//活跃状态
  String? categoryStr;
//粉丝团人数
  int? fanCount;
//粉丝人数
  String? sortStr;
//排名榜
  String? fanCountStr;
//排名
  String? sort;
//钻石加入粉丝团文案
  String? diamondJoinDesc;
//yahabibi币加入粉丝团文案
  String? moneyJoinDesc;
  String? groupRankRemain;
  String? groupRankTotal;
//心愿列表
  List<KHWishProductInfoModel?>? wishProductList;
//心愿表
  List<KHWishProductInfoModel?>? wishProductInfos;
  KHWishProductInfoModel? wishProductInfo;
//心愿榜用户列表
  List<KHChatRoomRankingModel?>? topWishUserList;
/** 团名宽 + 人数 */
  int? groupNameWidth;

  KHChatRoomFanstuanModel();
  factory KHChatRoomFanstuanModel.fromJson(Map<String, dynamic> json) =>
      _$KHChatRoomFanstuanModelFromJson(json);
  Map<String, dynamic> toJson() => _$KHChatRoomFanstuanModelToJson(this);
}
